package hu.myai.api.triggers;

import hu.myai.model.TriggerVO;

/**
 * @author bozbalint
 *
 */
public interface TriggerConsumerInterface {

    /**
     * Get the Unique name
     *
     * @return the name
     */
    public String getName();

    /**
     * @param name
     * @param value
     */
    public void addTrigger(String name, TriggerVO value);

    /**
     * When an strategy registers itself in a trigger than the trigger registers
     * itself using this method
     * */
    public boolean addTriggerNameForCheck(String nameForCheck);

    /**
     * When an strategy removes itself from a trigger than the trigger
     * unregisters itself using this method. This is because of the 2 way
     * dependency.
     * */
    public boolean removeTriggerNameForCheck(String nameForCheck);

}
